﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Olfrad.EscuelaSimple.Entidad
{
    public class Personal : IEntity<uint>
    {
        public virtual uint Id { get; set; }
        public virtual string Nombre { get; set; }
        public virtual string Apellido { get; set; }
        public virtual uint DNI { get; set; }
        public virtual DateTime FechaNacimiento { get; set; }
        public virtual string Domicilio { get; set; }
        public virtual string Localidad { get; set; }
        public virtual IEnumerable<Telefono> Telefonos { get; set; }
        public virtual DateTime? IngresoDocencia { get; set; }
        public virtual DateTime? IngresoEstablecimiento { get; set; }
        public virtual string Titulo { get; set; }
        public virtual string Cargo { get; set; }
        public virtual string SituacionRevista { get; set; }
        public virtual string Observacion { get; set; }
        public virtual IEnumerable<Inasistencia> Inasistencias { get; set; }

        public Personal()
        {
            this.Telefonos = new List<Telefono>();
            this.Inasistencias = new List<Inasistencia>();
        }

        public override bool Equals(object obj)
        {
            if (obj == null)
            {
                return false;
            }

            Personal personal = obj as Personal;
            if (personal == null)
            {
                return false;
            }

            return this.Id.Equals(personal.Id);
        }

        public override int GetHashCode()
        {
            return this.Id.GetHashCode();
        }
    }
}
